package com.tanhua.server.exception;

import com.tanhua.domain.vo.ErrorResult;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;

/**
 * spring全局异常
 * 1、方式1：通过接口HandlerExceptionResolver实现全局异常
 * 2、方式2：通过注解@ControllerAdvice实现全局异常
 *
 * 全局异常：当控制器方法出现异常，会自动来到全局异常类中
 */
@ControllerAdvice
public class ExceptionAdvice {
    /**
     * @ExceptionHandler    指定处理异常类型
     * @ResponseBody        把方法返回的对象自动转json
     */
    @ExceptionHandler(value = Exception.class)
    @ResponseBody
    public ResponseEntity<Object> handlerException(){
        return ResponseEntity.status(500).body(ErrorResult.error());
    }
}
